package com.example.exam.staff.service;

import com.example.exam.db.PageInfoBean;
import com.example.exam.staff.dao.StaffDao;
import com.example.exam.staff.model.StaffBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class StaffService {
    @Autowired
    StaffDao staffDao;
    /**
     * @Description:添加员工信息
     * @Param: [staffBean]
     * @return: java.lang.Integer
     * @Author: xhw
     * @Date: 2021/7/26
     */
    public Integer add(StaffBean staffBean){
        Integer i=staffDao.add(staffBean);
        if(i>0){
            return 1;
        }else{
            return -1;
        }
    }
    /**
     * @Description:删除员工信息
     * @Param: [id]
     * @return: java.lang.Integer
     * @Author: xhw
     * @Date: 2021/7/26
     */
    public Integer delete(Integer id){
        Integer i=staffDao.deleteById(id);
        if(i>0){
            return 1;
        }else{
            return -1;
        }
    }
    /**
     * @Description:查询一条员工信息
     * @Param: [id]
     * @return: com.example.exam.staff.model.StaffBean
     * @Author: xhw
     * @Date: 2021/7/26
     */
    public StaffBean findById(Integer id){
        StaffBean staffBean=staffDao.selectOne(id);
        if(staffBean!=null){
            return staffBean;
        }else{
            return null;
        }
    }
    /**
     * @Description:编辑员工信息
     * @Param: [staffBean]
     * @return: java.lang.Integer
     * @Author: xhw
     * @Date: 2021/7/26
     */
    public Integer edit(StaffBean staffBean){
        Integer i=staffDao.updateAllFieldById(staffBean);
        if(i>0){
            return 1;
        }else{
            return -1;
        }
    } /**
     * @Description:查询员工信息页面列表
     * @Param: [page, limit, name]
     * @return: com.example.exam.db.PageInfoBean
     * @Author: xhw
     * @Date: 2021/7/26
     */
    public PageInfoBean list(Integer page,Integer limit,String name){
        try {
            PageInfoBean pageInfoBean = new PageInfoBean();
            pageInfoBean.setPerPage(limit);
            if(page != null) {
                pageInfoBean.setCurPage(page);
            }
            PageInfoBean pageInfo = staffDao.list(pageInfoBean,name);
            return pageInfo;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    } /**
     * @Description:添加员工用户表信息
     * @Param: [sid, uid]
     * @return: java.lang.Integer
     * @Author: xhw
     * @Date: 2021/7/26
     */
    public Integer addStaffUser(Integer sid,Integer uid){
        Integer i=staffDao.addStaffUser(sid,uid);
        if(i>0){
            return 1;
        }else{
            return -1;
        }
    }/**
     * @Description:根据员工姓名查询员工信息
     * @Param: [name]
     * @return: java.lang.Integer
     * @Author: xhw
     * @Date: 2021/7/26
     */
    public Integer findByName(String name){
        StaffBean staffBean=staffDao.findByName(name);
        return staffBean.getId();
    } /**
     * @Description:查询员工信息表的一条数据
     * @Param: [id]
     * @return: com.example.exam.staff.model.StaffBean
     * @Author: xhw
     * @Date: 2021/7/26
     */
    public StaffBean findByUserId(Integer id){
      return staffDao.findById(id);
    }
    /**
     * @Description:查询员工用户表中的一条数据
     * @Param: [id]
     * @return: java.lang.Integer
     * @Author: xhw
     * @Date: 2021/7/26
     */
    public Integer findStaffId(Integer id){
        return staffDao.findStaffId(id);
    }/**
     * @Description:删除员工用户表中的一条数据
     * @Param: [id]
     * @return: java.lang.Integer
     * @Author: xhw
     * @Date: 2021/7/26
     */
    public Integer deleteStaffUser(Integer id){
            return staffDao.deleteStaffUser(id);
    }
    public Integer findUserId(Integer id){
        return staffDao.findUserId(id);
    }
}
